1. Field of the Invention
This invention relates to a method of encoding image signals for the purpose of signal compression. This invention particularly relates to a method of encoding image signals by orthogonal transformation.
2. Description of the Prior Art
Image signals representing half tone images, such as television signals, are composed of enormous amounts of information, and a broad-band transmission line is required for transmission of the image signals. Such image signals involve much redundancy, and various attempts have been made to compress the image signals by restricting the redundancy. Also, in recent years, recording of half tone images on optical disks, magnetic disks, or the like has been generally put into practice. In this case, image signal compression is conducted generally for the purpose of efficiently recording image signals on a recording medium.
As one of the methods of image signal compression, a method utilizing orthogonal transformation of image signals is well known. In this method, digital two-dimensional image signals are divided into blocks comprising an appropriate number of samples, and orthogonal transformation of a value string comprising the sample values is conducted for each block. Since energy is concentrated at a specific component by the orthogonal transformation, a component of high energy level is encoded (quantized) by allocating a long code length thereto, and a component of low energy level is encoded coarsely with a short code length, thereby reducing the number of codes per block. As the orthogonal transformation, Fourier transformation, cosine transformation, Hadamard transformation, Karhunen-Loeve transformation, or Harr transformation is usually used. The aforesaid image signal compression method will hereinbelow be described in further detail by taking the Hadamard transformation as an example. As shown in FIG. 2, blocks are formed by dividing digital two-dimensional image signals in a unit of, for example, two signals in a predetermined one-dimensional direction. When sample values x(0) and x(1) in the block are plotted on an orthogonal coordinate system, since correlation therebetween is high as mentioned above, most of the sample values are distributed near the straight line represented by the formula x(1)=x(0) as shown in FIG. 3. Therefore, as shown in FIG. 3, the orthogonal coordinate system is transformed by an angle of 45.degree. to determine a new y(0)-y(1) coordinate system. On the y(0)-y(1) coordinate system, y(0) represents the low frequency component of the original image signals prior to transformation, and attains a value slightly larger than x(0) and x(1) [a value approximately .sqroot. 2 times the values of x(0) and x(1)]. On the other hand, values of y(1) representing the high frequency component of the original image signals are distributed just within a very narrow range near the y(0) axis. In the case where a code length of, for example, seven bits is required for encoding of x(0) and x(1), seven bits or eight bits are required for encoding of y(0). On the other hand, y(1) can be encoded with a code length of, for example, four bits. Consequently, the code length per block is shortened, and compression of the image signals is achieved.
Orthogonal transformation of second order wherein each block is constituted by two image signals is conducted as mentioned above. As the other is increased, the tendency of energy concentrating at a specific component is increased, and it becomes possible to improve the effect of decreasing the number of bits. In general, the aforesaid transformation can be conducted by use of an orthogonal function matrix. In an extreme case, when an intrinsic function of the objective image is selected as the orthogonal function matrix, the transformed image signals are constituted by the intrinsic value matrix, and the original image can be expressed just by the diagonal component of the matrix. Also, instead of dividing the image signals just in a single direction to form blocks as mentioned above, each block may be constituted by two-dimensional image signals. In this case, the effect of decreasing the number of bits is markedly improved over the one-dimensional orthogonal transformation.
The transformed signals obtained by the aforesaid two-dimensional orthogonal transformation are arranged in the order of the sequency (i.e. the number of "0" position crossing) of the orthogonal function utilized for the transformation in each block. Since the sequency is correlated with the spatial frequency, the transformed signals are put side by side in the longitudinal and transverse directions in the order of the frequency as shown in FIG. 4. Therefore, the code length per block may be shortened by allocating a comparatively long code length to the transformed signals representing the low frequency component (i.e. the signals on the left upper side in FIG. 4) as in the case where a longer code length is allocated to y(0) in the aforesaid one-dimensional orthogonal transformation of second order, and allocating a comparatively short code length or no code to the transformed signals representing the high frequency component (i.e. the signals on the right lower side in FIG. 4).
The aforesaid allocation of the code lengths has heretofore been conducted in accordance with a predetermined pattern. However, since the code length necessary for representing the transformed signals of a sequency differs with images and blocks, it may occur that the predetermined and allocated code length is insufficient to represent the transformed signal accurately. In such a case, the maximum value or the minimum value which can be represented with the allocated code length is taken as the encoded signal. As a result, the image quality of a reproduced image obtained by decoding and inverse transformation is deteriorated. In order to eliminate this problem, the allocated code length determined in advance may be adjusted to a substantially long value. However, with this method, it is impossible to compress the image signals substantially.